The present invention relates to a bus arbitration system and, more particularly, to a bus arbitration system for granting access to an expansion bus to devices following two-wire bus arbitration protocol or three-wire bus arbitration protocol.
Many existing devices, such as the Motorola 68000 type of devices follow three-wire bus arbitration protocol. In order for such a device to access the bus, the device must assert a bus request strobe. When the bus recognizes the device and chooses to allow the device to access the bus, the bus asserts a grant strobe to the device. Upon receipt of the bus grant strobe, the device asserts a bus grant acknowledge strobe to the bus confirming that the device is accessing the bus.
It is important to most system users that a system be easy to access and that data can be processed as quickly as possible. Therefore, any short cuts which can be taken or design changes which can be made to accelerate processing time are desirable. In most systems, it is unnecessary to have both a grant signal asserted by the bus and an acknowledgment signal asserted by the device.
The present invention is directed to a bus arbitration system which follows two-wire bus arbitration protocol. A device seeking access to the bus asserts a bus request strobe to the bus. When the bus wishes to give the device access to the bus, the bus asserts a grant strobe to the device. Since only two signals are necessary to provide a device access to the bus, the processing time of the system is significantly decreased. Furthermore, only two wires are needed to process bus requests.
In addition, the two-wire bus arbitration protocol is an asynchronous system which is capable of running independently of the microprocessor clock. Most three-wire bus arbitration protocol devices are synchronous devices which must be driven in accordance to certain edges of the microprocessors clock cycle. This can be time consuming and delay processing time since a device may be ready prior to when the appropriate clock edge is detected.
While a two-wire arbitration protocol system is more efficient than a three-wire bus arbitration protocol system, a bus arbitration system which cannot accept devices which follow three-wire bus arbitration protocol as well as devices which follow two-wire arbitration protocol will be at a significant disadvantage. Since most of the present devices are three-wire bus arbitration protocol devices, a bus arbitration system which cannot accept these devices will cause these devices to become obsolete. This will result in a majority of the devices having to be redesigned which will be at great cost to the system user as well as possibly hampering a system user from performing certain procedures.
Therefore, it is desirable to have a bus arbitration system which follows two-wire bus arbitration protocol and which is capable of accepting devices which follow three-wire bus arbitration protocol. In this way, system users can still use their three-wire bus arbitration protocol devices while upgrading to newer devices which follow two-wire arbitration protocol and thus are more efficient. In addition, devices requesting access to the bus can be prioritized so that devices following two-wire bus arbitration protocol can gain access to the expansion bus before devices following three-wire bus arbitration protocol. This will significantly speed up processing time and produce a more efficient system.